import { defineConfig } from 'umi'
import { routes } from './routes'

// 代理提示
const proxyReq = (proxyReq: any) => {
  const sockets = proxyReq.agent.sockets
  const keys = Object.keys(sockets)
  console.log(`当前请求代理到：${keys[0]}, ${sockets[keys[0]][0]._httpMessage.path}`)
}

// 配置项
export default defineConfig({
  proxy: {
    '/api': {
      // target: 'http://192.168.0.222:8081/xiaoma-system', // 本地222服务器
      // target: 'http://117.44.231.668:8081/uusc', // 周峰峰服务器
      target: 'http://192.168.20.16:8081/uusc', // 周峰峰服务器
      // target: 'http://192.168.0.141:8081/xiaoma-system', // 刘涛服务器
      changeOrigin: true,
      pathRewrite: { '^/api': '' },
      onProxyReq: proxyReq,
    },
  },
  define: {
    // ftp
    'process.env.FTP_SOURCE_STATIC':
      process.env.NODE_ENV === 'production' ? `/ftp/` : `https://remote222.xiaoma.com/ftp/`,
    // 钉钉登录获取后端的请求地址
    'process.env.DING_LOGIN': process.env.NODE_ENV === 'production' ? `/api/` : `http://uusc.techxiaoma.com:8080/`,
    // 视频流
    'process.env.WS_STREAM':
      process.env.NODE_ENV === 'production' ? `/stateGridSafe/` : 'wss://remote222.xiaoma.com/stateGridSafe/', // 服务器视频流
    // process.env.NODE_ENV === 'production' ? `wss://${window.location.host}/streamWs/` : 'ws://192.168.0.188:8118/', // 张泽文本地视频流
  },

  // 插件引入
  plugins: [
    '@umijs/plugins/dist/initial-state',
    '@umijs/plugins/dist/layout',
    '@umijs/plugins/dist/request',
    '@umijs/plugins/dist/model',
    '@umijs/plugins/dist/access',
  ],

  // 配置别名
  alias: {
    '@': require('path').resolve(__dirname, './src'),
  },

  // 路由
  routes,

  // 默认包管理器
  npmClient: 'yarn',

  // 请求配置
  request: {},

  // 数据流配置
  model: {},

  // mock状态在.env修改

  // 权限管理
  access: {},

  // 初始化数据配置
  initialState: {},

  // 布局配置
  layout: {},

  scripts: ['https://g.alicdn.com/dingding/h5-dingtalk-login/0.21.0/ddlogin.js'],
})
